package com.ruoyi.system.api.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import java.util.Date;

/**
 * Hot Account report对象 st_hot_account_report
 * 
 * @author ruoyi
 * @date 2020-03-06
 */
@ApiModel(value="Hot Account report",description="Hot Account report") // 用来描述封装的参数对象与返回的参数对象
@JsonInclude(JsonInclude.Include.NON_NULL)
public class StHotAccountReport extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    @ApiModelProperty(value = "主键ID",name="id",required = false,dataType="int",example="主键ID", hidden = true)
    private Long id;

    /** service号 */
    @Excel(name = "service号")
    @ApiModelProperty(value = "Service号",name="serviceNo",required = true,dataType="String",example="serviceNo")
    private String serviceNo;

    /** 工程师ID */
    @Excel(name = "工程师ID")
    @ApiModelProperty(value = "工程师ID",name="enginnerId",required = true,dataType="int",example="工程师ID")
    private Long enginnerId;

    /** 安装日期 */
    @Excel(name = "安装日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    @ApiModelProperty(value = "安装日期",name="installDate",required = true,dataType="String",example="安装日期")
    private Date installDate;

    /** sales */
    @Excel(name = "sales")
    @ApiModelProperty(value = "sales",name="sales",required = true,dataType="String",example="sales")
    private String sales;

    /** hotAccountType */
    @Excel(name = "hotAccountType")
    @ApiModelProperty(value = "hotAccountType",name="hotAccountType",required = true,dataType="String",example="hotAccountType")
    private String hotAccountType;

    /** hotAccountTypeName */
    @Excel(name = "hotAccountTypeName")
    @ApiModelProperty(value = "hotAccountTypeName",name="hotAccountTypeName",required = true,dataType="String",example="hotAccountTypeName")
    private String hotAccountTypeName;

    /** failType */
    @Excel(name = "failType")
    @ApiModelProperty(value = "failType",name="failType",required = true,dataType="String",example="failType")
    private String failType;

    /** failTypeName */
    @Excel(name = "failTypeName")
    @ApiModelProperty(value = "failTypeName",name="failTypeName",required = true,dataType="String",example="failTypeName")
    private String failTypeName;

    /** instrunmentStatus */
    @Excel(name = "instrunmentStatus")
    @ApiModelProperty(value = "instrunmentStatus",name="instrunmentStatus",required = true,dataType="String",example="instrunmentStatus")
    private String instrunmentStatus;

    /** startDate */
    @Excel(name = "startDate")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    @ApiModelProperty(value = "startDate",name="startDate",required = true,dataType="String",example="startDate")
    private Date startDate;

    /** endDate */
    @Excel(name = "endDate")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    @ApiModelProperty(value = "endDate",name="endDate",required = true,dataType="String",example="endDate")
    private Date endDate;

    /** 问题原因 */
    @Excel(name = "问题原因")
    @ApiModelProperty(value = "问题原因",name="problem",required = true,dataType="String",example="问题原因")
    private String problem;

    /** workDone */
    @Excel(name = "workDone")
    @ApiModelProperty(value = "workDone",name="workDone",required = true,dataType="String",example="workDone")
    private String workDone;

    /** 设备模块 */
    @Excel(name = "设备模块")
    @ApiModelProperty(value = "设备模块",name="equipmentMode",required = true,dataType="String",example="设备模块")
    private String equipmentMode;

    /** 序列号 */
    @Excel(name = "序列号")
    @ApiModelProperty(value = "序列号",name="serialNo",required = true,dataType="String",example="序列号")
    private String serialNo;

    /** severityLevel */
    @Excel(name = "severityLevel")
    @ApiModelProperty(value = "severityLevel",name="severityLevel",required = true,dataType="String",example="severityLevel")
    private String severityLevel;

    /** severityLevelName */
    @Excel(name = "severityLevelName")
    @ApiModelProperty(value = "severityLevelName",name="severityLevelName",required = true,dataType="String",example="severityLevelName")
    private String severityLevelName;

    /** 是否同步到CC，0未同步、1已同步 */
    @Excel(name = "是否同步到CC，0未同步、1已同步")
    private String syncFlag;

    /** 同步到CC的时间 */
    @Excel(name = "同步到CC的时间")
    private Date syncTime;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

    /** 辅助id */
    @Excel(name = "辅助id")
    @ApiModelProperty(value = "辅助id",name="helpId",required = true,dataType="String",example="辅助id")
    private String helpId;

    // 辅助字段
    /** 子表主键(st_plan_details表主键) */
    @ApiModelProperty(value = "st_plan_details表主键",name="planId",required = true,dataType="int",example="st_plan_details表主键")
    private Long planId;
    /** 服务通知主键（st_service_notice表） */
    @ApiModelProperty(value = "st_service_notice表主键",name="noticeId",required = true,dataType="String",example="st_service_notice表主键")
    private Long noticeId;
    /** 工程师姓名 */
    @ApiModelProperty(value = "工程师姓名",name="fseName",required = true,dataType="String",example="工程师姓名")
    private String fseName;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setServiceNo(String serviceNo) 
    {
        this.serviceNo = serviceNo;
    }

    public String getServiceNo() 
    {
        return serviceNo;
    }
    public void setEnginnerId(Long enginnerId) 
    {
        this.enginnerId = enginnerId;
    }

    public Long getEnginnerId() 
    {
        return enginnerId;
    }
    public void setInstallDate(Date installDate) 
    {
        this.installDate = installDate;
    }

    public Date getInstallDate() 
    {
        return installDate;
    }
    public void setSales(String sales) 
    {
        this.sales = sales;
    }

    public String getSales() 
    {
        return sales;
    }
    public void setHotAccountType(String hotAccountType)
    {
        this.hotAccountType = hotAccountType;
    }

    public String getHotAccountType()
    {
        return hotAccountType;
    }
    public void setFailType(String failType)
    {
        this.failType = failType;
    }

    public String getFailType()
    {
        return failType;
    }
    public void setInstrunmentStatus(String instrunmentStatus)
    {
        this.instrunmentStatus = instrunmentStatus;
    }

    public String getInstrunmentStatus()
    {
        return instrunmentStatus;
    }
    public void setStartDate(Date startDate) 
    {
        this.startDate = startDate;
    }

    public Date getStartDate() 
    {
        return startDate;
    }
    public void setEndDate(Date endDate) 
    {
        this.endDate = endDate;
    }

    public Date getEndDate() 
    {
        return endDate;
    }
    public void setProblem(String problem) 
    {
        this.problem = problem;
    }

    public String getProblem() 
    {
        return problem;
    }
    public void setWorkDone(String workDone) 
    {
        this.workDone = workDone;
    }

    public String getWorkDone() 
    {
        return workDone;
    }
    public void setEquipmentMode(String equipmentMode)
    {
        this.equipmentMode = equipmentMode;
    }

    public String getEquipmentMode()
    {
        return equipmentMode;
    }
    public void setSerialNo(String serialNo) 
    {
        this.serialNo = serialNo;
    }

    public String getSerialNo() 
    {
        return serialNo;
    }
    public void setSeverityLevel(String severityLevel) 
    {
        this.severityLevel = severityLevel;
    }

    public String getSeverityLevel() 
    {
        return severityLevel;
    }
    public void setSyncFlag(String syncFlag) 
    {
        this.syncFlag = syncFlag;
    }

    public String getSyncFlag() 
    {
        return syncFlag;
    }
    public void setSyncTime(Date syncTime) 
    {
        this.syncTime = syncTime;
    }

    public Date getSyncTime() 
    {
        return syncTime;
    }
    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }
    public void setHelpId(String helpId) 
    {
        this.helpId = helpId;
    }

    public String getHelpId() 
    {
        return helpId;
    }

    public Long getPlanId() {
        return planId;
    }

    public void setPlanId(Long planId) {
        this.planId = planId;
    }

    public Long getNoticeId() {
        return noticeId;
    }

    public void setNoticeId(Long noticeId) {
        this.noticeId = noticeId;
    }

    public String getFseName() {
        return fseName;
    }

    public void setFseName(String fseName) {
        this.fseName = fseName;
    }

    public String getHotAccountTypeName() {
        return hotAccountTypeName;
    }

    public void setHotAccountTypeName(String hotAccountTypeName) {
        this.hotAccountTypeName = hotAccountTypeName;
    }

    public String getFailTypeName() {
        return failTypeName;
    }

    public void setFailTypeName(String failTypeName) {
        this.failTypeName = failTypeName;
    }

    public String getSeverityLevelName() {
        return severityLevelName;
    }

    public void setSeverityLevelName(String severityLevelName) {
        this.severityLevelName = severityLevelName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("serviceNo", getServiceNo())
            .append("enginnerId", getEnginnerId())
            .append("installDate", getInstallDate())
            .append("sales", getSales())
            .append("hotAccountType", getHotAccountType())
            .append("failType", getFailType())
            .append("instrunmentStatus", getInstrunmentStatus())
            .append("startDate", getStartDate())
            .append("endDate", getEndDate())
            .append("problem", getProblem())
            .append("workDone", getWorkDone())
            .append("equipmentMode", getEquipmentMode())
            .append("serialNo", getSerialNo())
            .append("severityLevel", getSeverityLevel())
            .append("syncFlag", getSyncFlag())
            .append("syncTime", getSyncTime())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("delFlag", getDelFlag())
            .append("helpId", getHelpId())
            .toString();
    }
}
